#include <iostream>
using std::cout;
using std::endl;

double sum(){
    return 0;
}

/* double sum(double x){ */
/*     return x; */
/* } */

template <class T1, class ...Args>
double sum(T1 x, Args ...args){
    return x + sum(args...);
}

//可以两个两个解，三个三个解
//但是对调用时传入的参数个数就有了限制
//也要设置相应的合适的递归出口
/* template <class T1,class T2, class ...Args> */
/* double sum(T1 x, T2 y, Args ...args){ */
/*     return x + y + sum(args...); */
/* } */

void test0(){
    cout << sum(1.4,5,6.7,8,9.7,8,10) << endl;
}

int main(void){
    test0();
    return 0;
}

